package com.ruoyi.mobile.mapper;

import java.util.List;
import com.ruoyi.mobile.domain.LessonPrescription;
import com.ruoyi.mobile.model.bo.LessonPrescriptionBo;
import com.ruoyi.mobile.model.vo.WeekVo;
import org.apache.ibatis.annotations.Param;

/**
 * 运动处方配置Mapper接口
 * 
 * @author ruoyi
 * @date 2022-10-14
 */
public interface LessonPrescriptionMapper 
{
    /**
     * 查询运动处方配置
     *
     * @param id 运动处方配置主键
     * @return 运动处方配置
     */
    public LessonPrescription selectLessonPrescriptionById(Integer id);

    /**
     * 查询某一周次的运动处方配置
     *
     * @param week 周次
     * @return 运动处方配置
     */
    public LessonPrescription selectLessonPrescriptionByWeek(@Param("week") Integer week);

    /**
     * 查询运动处方配置列表
     *
     * @param lessonPrescription 运动处方配置
     * @return 运动处方配置集合
     */
    public List<LessonPrescriptionBo> selectLessonPrescriptionList(LessonPrescription lessonPrescription);

    /**
     * 新增运动处方配置
     * 
     * @param lessonPrescription 运动处方配置
     * @return 结果
     */
    public int insertLessonPrescription(LessonPrescription lessonPrescription);

    /**
     * 修改运动处方配置
     *
     * @param lessonPrescription 运动处方配置
     * @return 结果
     */
    public int updateLessonPrescription(LessonPrescription lessonPrescription);

    /**
     * 删除运动处方配置
     *
     * @param id 运动处方配置主键
     * @return 结果
     */
    public int deleteLessonPrescriptionById(Integer id);

    /**
     * 批量删除运动处方配置
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteLessonPrescriptionByIds(Integer[] ids);


    /**
     * 获取前9周的运动处方配置
     * @return
     */
    public List<LessonPrescription> selectNineWeekLessonPrescriptionList();

    public Integer getIdByWeek(Integer week);

    public List<WeekVo> selectAllWeek();
}
